# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Themaister <maister@archlinux.us>
# Contributor: lifning <definelightning@gmail.com>

pkgname=retroarch
pkgver=1.15.0
pkgrel=1
pkgdesc='Reference frontend for the libretro API'
arch=(loong64 x86_64)
url=http://www.libretro.com/
license=(GPL)
groups=(libretro)
depends=(
  alsa-lib
  ffmpeg
  flac
  libass.so
  libdrm
  libfreetype.so
  libgl
  libpulse
  libudev.so
  libusb-1.0.so
  mbedtls
  mesa
  openal
  qt5-base
  sdl2
  spirv-tools
  v4l-utils
  zlib
)
makedepends=(
  gamemode
  git
  libdecor
  libx11
  libxcb
  libxext
  libxinerama
  libxkbcommon
  libxrandr
  libxv
  libxxf86vm
  vulkan-icd-loader
  wayland
  wayland-protocols
)
optdepends=(
  'gamemode: GameMode support'
  'libdecor: Wayland decorations'
  'libretro-overlays: Collection of overlays'
  'libretro-shaders: Collection of shaders'
  'libxinerama: X11 support'
  'libxrandr: X11 support'
  'python: retroarch-cg2glsl'
  'retroarch-assets-ozone: Ozone menu assets'
  'retroarch-assets-xmb: XMB menu assets'
  'wayland: Wayland support'
)
backup=(etc/retroarch.cfg)
_tag=6616b807edea5b56683e9fbca8b003b436c22b13
source=(
  git+https://github.com/libretro/RetroArch.git#tag=${_tag}
  retroarch-config.patch
)
b2sums=('SKIP'
        '5ecbe57126c7f9b66bdf189f0af2f1cec031cb68ea85bb9609847ba9beb0e720c902cd3330d7c286901a73e6c2e272c3f04166cf9a47bb6f80097f19dde8ce3a')

pkgver() {
  cd RetroArch
  git describe --tags | sed 's/^v//'
}

prepare() {
  cd RetroArch
  patch -Np1 -i ../retroarch-config.patch
  git cherry-pick -n 685948368e6b28b97e1b91bdfe5921519359a033 # FS#66843
}

build() {
  cd RetroArch
  ./configure \
    --prefix=/usr \
    --disable-builtinflac \
    --disable-builtinmbedtls \
    --disable-builtinzlib \
    --disable-cg \
    --disable-jack \
    --disable-oss \
    --disable-sdl \
    --enable-dbus
  make
  make -C libretro-common/audio/dsp_filters
  make -C gfx/video_filters
}

package() {
  cd RetroArch
  make DESTDIR="${pkgdir}" install
  install -Dm 644 libretro-common/audio/dsp_filters/*.{dsp,so} -t "${pkgdir}"/usr/lib/retroarch/filters/audio/
  install -Dm 644 gfx/video_filters/*.{filt,so} -t "${pkgdir}"/usr/lib/retroarch/filters/video/
}

# vim: ts=2 sw=2 et:
